package easyLeetcode;

/*
* 14. 最长公共前缀
编写一个函数来查找字符串数组中的最长公共前缀。
如果不存在公共前缀，返回空字符串 ""。
示例 1：
输入：strs = ["flower","flow","flight"]
输出："fl"
示例 2：
输入：strs = ["dog","racecar","car"]
输出：""
解释：输入不存在公共前缀。
*
* */
public class Leetcode_4 {
    public static void main(String[] args) {
        String[] s = {"flower", "flow", "flight"};
        System.out.println(longestCommonPrefix(s));
    }

    public static String longestCommonPrefix(String[] strs) {
        String s = strs[0];//假设作为前缀
        //遍历数组
        for (String str : strs) {
            //如果没有前缀进入循环
            while (!str.startsWith(s)) {
                //没找到公共前缀
                if (s.length() == 0) return "";
                //缩短s前缀，进行匹配
                s = s.substring(0, s.length() - 1);
            }
        }
        //循环结束返回前缀
        return s;

    }
}
